package com.java.tutorials.jdk7.PathMatcher;
import java.io.IOException;
import java.nio.file.DirectoryIteratorException;
import java.nio.file.DirectoryStream;
import java.nio.file.FileSystems;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.PathMatcher;
import java.nio.file.Paths;
/**
 * Created by xuzhike on 2016/1/27.
 * http://www.java2s.com/Code/Java/JDK-7/UsingthePathMatcherinterfacetofilteradirectory.htm
 * Using the PathMatcher interface to filter a directory
 */
public class UsingthePathMatcherinterfacetofilteradirectory {
    public static void main(String[] args) {
        Path directory = Paths.get("C:/Program Files/Java/jdk1.7.0/bin");
        PathMatcher pathMatcher = FileSystems.getDefault().getPathMatcher(
                "glob:java?.exe");
        try (DirectoryStream<Path> directoryStream = Files.newDirectoryStream(
                directory, "java*.exe")) {
            for (Path file : directoryStream) {
                if (pathMatcher.matches(file.getFileName())) {
                    System.out.println(file.getFileName());
                }
            }
        } catch (IOException | DirectoryIteratorException ex) {
            ex.printStackTrace();
        }

    }
}
